home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / pluginy Firefox / 684 / 684.xpi / chrome / fireftp.jar / content / js / etc / treeSync.js < prev    next >
Text File  |  2006-06-03  |  1KB  |  34 lines

  1. function treeSyncManager(remote) {
  2.   var localPathSlash  = gLocalPath.value  + (gLocalPath.value.charAt(gLocalPath.value.length - 1)   != gSlash ? gSlash : '');
  3.   var localSyncSlash  = gTreeSyncLocal    + (gTreeSyncLocal.charAt(gTreeSyncLocal.length - 1)       != gSlash ? gSlash : '');
  4.   var remotePathSlash = gRemotePath.value + (gRemotePath.value.charAt(gRemotePath.value.length - 1) != "/"    ? "/"    : '');
  5.   var remoteSyncSlash = gTreeSyncRemote   + (gTreeSyncRemote.charAt(gTreeSyncRemote.length - 1)     != "/"    ? "/"    : '');
  6.  
  7.   if (remote && localPathSlash.indexOf(localSyncSlash) == 0) {
  8.     var newRemote      = remoteSyncSlash + gLocalPath.value.substring(localSyncSlash.length).replace(/\x5c/g, "/");
  9.     var newRemoteSlash = newRemote + (newRemote.charAt(newRemote.length - 1) != "/" ? "/" : '');
  10.  
  11.     if (newRemoteSlash != remotePathSlash) {
  12.       gTreeSyncManager = true;
  13.       remoteDirTree.changeDir(newRemote);
  14.       return;
  15.     }
  16.   } else if (!remote && remotePathSlash.indexOf(remoteSyncSlash) == 0) {
  17.     var newLocal  = localSyncSlash  + gRemotePath.value.substring(remoteSyncSlash.length);
  18.  
  19.     if (gSlash == "\\") {
  20.       newLocal = newLocal.replace(/\x2f/g, "\\");
  21.     }
  22.  
  23.     var newLocalSlash = newLocal + (newLocal.charAt(newLocal.length - 1) != gSlash ? gSlash : '');
  24.  
  25.     if (newLocalSlash  != localPathSlash) {
  26.       gTreeSyncManager = true;
  27.       localDirTree.changeDir(newLocal);
  28.       return;
  29.     }
  30.   }
  31.  
  32.   gTreeSyncManager = false;
  33. }
  34.